[INFO] cloning repository https://github.com/hufengxiao/world-rules
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hufengxiao/world-rules" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhufengxiao%2Fworld-rules", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhufengxiao%2Fworld-rules'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e9716832e6c3385f97c45880d14fde20af23208c
[INFO] checking hufengxiao/world-rules against try#24e1a22664233bce1f9b5dc6eee7c1f74327e28c for pr-159343
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhufengxiao%2Fworld-rules" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/hufengxiao/world-rules
[INFO] removed 0 missing examples
[INFO] finished tweaking git repo https://github.com/hufengxiao/world-rules
[INFO] tweaked toml for git repo https://github.com/hufengxiao/world-rules written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/hufengxiao/world-rules on toolchain 24e1a22664233bce1f9b5dc6eee7c1f74327e28c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/hufengxiao/world-rules already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed
[INFO] running `Command { std: "docker" "start" "85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed" "/opt/rustwide/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed" "/opt/rustwide/cargo-home/bin/cargo" "+24e1a22664233bce1f9b5dc6eee7c1f74327e28c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.54
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.20
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-deque v0.8.7
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling cc v1.2.67
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking either v1.16.0
[INFO] [stderr]     Checking regex-syntax v0.8.11
[INFO] [stderr]     Checking memchr v2.8.1
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking rand v0.9.5
[INFO] [stderr]     Checking page_size v0.6.0
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking rusty-fork v0.3.1
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking rayon-core v1.13.0
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking regex-automata v0.4.15
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]     Checking criterion-plot v0.8.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.54
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking regex v1.13.0
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking world_rules v2.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking proptest v1.11.0
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking criterion v0.8.2
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]    --> src/rules/games/wargames/miniature_games.rs:301:37
[INFO] [stdout]     |
[INFO] [stdout] 301 |     pub fn measurement_tools(&self, scale: ModelScale) -> Vec<&'static str> {
[INFO] [stdout]     |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]  --> benches/sudoku_bench.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use criterion::{black_box, criterion_group, criterion_main, Criterion};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/sudoku_bench.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 22 |         b.iter(|| black_box(rules.validate(&valid_sudoku)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/sudoku_bench.rs:31:19
[INFO] [stdout]    |
[INFO] [stdout] 31 |         b.iter(|| black_box(rules.validate(&completed_sudoku)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/sudoku_bench.rs:40:19
[INFO] [stdout]    |
[INFO] [stdout] 40 |         b.iter(|| black_box(rules.validate(&partial_sudoku)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/sudoku_bench.rs:59:19
[INFO] [stdout]    |
[INFO] [stdout] 59 |         b.iter(|| black_box(standard_rules.validate(&test_puzzle)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/sudoku_bench.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 63 |         b.iter(|| black_box(variant_rules.validate(&test_puzzle)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/sudoku_bench.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             black_box(valid)
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/sudoku_bench.rs:111:13
[INFO] [stdout]     |
[INFO] [stdout] 111 |             black_box(valid)
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/sudoku_bench.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |             black_box(valid)
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/sudoku_bench.rs:141:54
[INFO] [stdout]     |
[INFO] [stdout] 141 |     c.bench_function("sudoku_explain", |b| b.iter(|| black_box(rules.explain())));
[INFO] [stdout]     |                                                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]  --> benches/mahjong_bench.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use criterion::{black_box, criterion_group, criterion_main, Criterion};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/mahjong_bench.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |         b.iter(|| black_box(hand_straight.can_win()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/mahjong_bench.rs:60:53
[INFO] [stdout]    |
[INFO] [stdout] 60 |     group.bench_function("pairs_win", |b| b.iter(|| black_box(hand_pairs.can_win())));
[INFO] [stdout]    |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/mahjong_bench.rs:84:19
[INFO] [stdout]    |
[INFO] [stdout] 84 |         b.iter(|| black_box(hand_seven_pairs.can_win()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/mahjong_bench.rs:103:19
[INFO] [stdout]     |
[INFO] [stdout] 103 |         b.iter(|| black_box(sichuan_rules.validate(&test_hand)))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/mahjong_bench.rs:107:19
[INFO] [stdout]     |
[INFO] [stdout] 107 |         b.iter(|| black_box(riichi_rules.validate(&test_hand)))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/mahjong_bench.rs:125:13
[INFO] [stdout]     |
[INFO] [stdout] 125 |             black_box(hand)
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/mahjong_bench.rs:150:13
[INFO] [stdout]     |
[INFO] [stdout] 150 |             black_box(h)
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/mahjong_bench.rs:181:19
[INFO] [stdout]     |
[INFO] [stdout] 181 |         b.iter(|| black_box(hand_waiting.can_win()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]  --> tests/proptest_mahjong.rs:9:1
[INFO] [stdout]   |
[INFO] [stdout] 9 | /// 生成有效的万子数字 (1-9)
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]   |
[INFO] [stdout]   = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]   = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/proptest_mahjong.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | /// 生成有效的条子数字 (1-9)
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/proptest_mahjong.rs:23:1
[INFO] [stdout]    |
[INFO] [stdout] 23 | /// 生成有效的筒子数字 (1-9)
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/proptest_mahjong.rs:30:1
[INFO] [stdout]    |
[INFO] [stdout] 30 | /// 生成任意有效数字牌数字
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/proptest_mahjong.rs:37:1
[INFO] [stdout]    |
[INFO] [stdout] 37 | /// 生成风牌
[INFO] [stdout]    | ^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/proptest_mahjong.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 49 | /// 生成箭牌
[INFO] [stdout]    | ^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/proptest_mahjong.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | /// 生成任意牌类型
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/proptest_mahjong.rs:82:1
[INFO] [stdout]    |
[INFO] [stdout] 82 | /// 生成任意牌
[INFO] [stdout]    | ^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/proptest_mahjong.rs:89:1
[INFO] [stdout]    |
[INFO] [stdout] 89 | /// 生成手牌（最多14张牌）
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]  --> benches/poker_bench.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use criterion::{black_box, criterion_group, criterion_main, Criterion};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/poker_bench.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |         b.iter(|| black_box(Card::new(Suit::Heart, Rank::Ace)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/poker_bench.rs:29:13
[INFO] [stdout]    |
[INFO] [stdout] 29 |             black_box(hand)
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/poker_bench.rs:48:19
[INFO] [stdout]    |
[INFO] [stdout] 48 |         b.iter(|| black_box(texas_rules.validate(&test_hand)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/poker_bench.rs:52:19
[INFO] [stdout]    |
[INFO] [stdout] 52 |         b.iter(|| black_box(omaha_rules.validate(&test_hand)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/poker_bench.rs:66:25
[INFO] [stdout]    |
[INFO] [stdout] 66 |             let rank1 = black_box(card1.rank);
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/poker_bench.rs:67:25
[INFO] [stdout]    |
[INFO] [stdout] 67 |             let rank2 = black_box(card2.rank);
[INFO] [stdout]    |                         ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/poker_bench.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |         b.iter(|| black_box(texas_rules.hand_rankings()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/poker_bench.rs:89:19
[INFO] [stdout]    |
[INFO] [stdout] 89 |         b.iter(|| black_box(texas_rules.betting_actions()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/poker_bench.rs:110:13
[INFO] [stdout]     |
[INFO] [stdout] 110 |             black_box(h)
[INFO] [stdout]     |             ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `hand`
[INFO] [stdout]    --> tests/proptest_mahjong.rs:186:13
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let hand = Hand::from_tiles(tiles);
[INFO] [stdout]     |             ^^^^ help: if this is intentional, prefix it with an underscore: `_hand`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]    --> tests/miri_safety.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 305 |     struct DropTracker {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 306 |         id: usize,
[INFO] [stdout]     |         ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `data` is never read
[INFO] [stdout]    --> tests/miri_safety.rs:745:9
[INFO] [stdout]     |
[INFO] [stdout] 744 |     struct SimpleFuture {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] 745 |         data: RuleMetadata,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]  --> benches/law_bench.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use criterion::{black_box, criterion_group, criterion_main, Criterion};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:17:19
[INFO] [stdout]    |
[INFO] [stdout] 17 |         b.iter(|| black_box(CivilLawRules::new()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:21:19
[INFO] [stdout]    |
[INFO] [stdout] 21 |         b.iter(|| black_box(CriminalLawRules::new()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:25:19
[INFO] [stdout]    |
[INFO] [stdout] 25 |         b.iter(|| black_box(ConstitutionRules::new()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:29:19
[INFO] [stdout]    |
[INFO] [stdout] 29 |         b.iter(|| black_box(CompanyLawRules::new()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 33 |         b.iter(|| black_box(ConsumerLawRules::new()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:37:19
[INFO] [stdout]    |
[INFO] [stdout] 37 |         b.iter(|| black_box(LaborLawRules::new()))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:40:53
[INFO] [stdout]    |
[INFO] [stdout] 40 |     group.bench_function("tax_rules", |b| b.iter(|| black_box(TaxLawRules::new())));
[INFO] [stdout]    |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:58:19
[INFO] [stdout]    |
[INFO] [stdout] 58 |         b.iter(|| black_box(civil_rules.validate(&simple_context)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 |         b.iter(|| black_box(criminal_rules.validate(&simple_context)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:66:19
[INFO] [stdout]    |
[INFO] [stdout] 66 |         b.iter(|| black_box(constitution_rules.validate(&simple_context)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:78:19
[INFO] [stdout]    |
[INFO] [stdout] 78 |         b.iter(|| black_box(civil_rules.validate(&complex_context)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/law_bench.rs:82:19
[INFO] [stdout]    |
[INFO] [stdout] 82 |         b.iter(|| black_box(criminal_rules.validate(&complex_context)))
[INFO] [stdout]    |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:102:19
[INFO] [stdout]     |
[INFO] [stdout] 102 |         b.iter(|| black_box(civil_rules.explain()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:106:19
[INFO] [stdout]     |
[INFO] [stdout] 106 |         b.iter(|| black_box(criminal_rules.explain()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:110:19
[INFO] [stdout]     |
[INFO] [stdout] 110 |         b.iter(|| black_box(constitution_rules.explain()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:114:19
[INFO] [stdout]     |
[INFO] [stdout] 114 |         b.iter(|| black_box(company_rules.explain()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:118:19
[INFO] [stdout]     |
[INFO] [stdout] 118 |         b.iter(|| black_box(consumer_rules.explain()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:122:19
[INFO] [stdout]     |
[INFO] [stdout] 122 |         b.iter(|| black_box(labor_rules.explain()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:125:55
[INFO] [stdout]     |
[INFO] [stdout] 125 |     group.bench_function("tax_explain", |b| b.iter(|| black_box(tax_rules.explain())));
[INFO] [stdout]     |                                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:139:19
[INFO] [stdout]     |
[INFO] [stdout] 139 |         b.iter(|| black_box(civil_rules.metadata()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:143:19
[INFO] [stdout]     |
[INFO] [stdout] 143 |         b.iter(|| black_box(civil_rules.category()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:147:19
[INFO] [stdout]     |
[INFO] [stdout] 147 |         b.iter(|| black_box(criminal_rules.metadata()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:151:19
[INFO] [stdout]     |
[INFO] [stdout] 151 |         b.iter(|| black_box(criminal_rules.category()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:165:19
[INFO] [stdout]     |
[INFO] [stdout] 165 |         b.iter(|| black_box(civil_rules.basic_principles()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:169:19
[INFO] [stdout]     |
[INFO] [stdout] 169 |         b.iter(|| black_box(civil_rules.civil_subjects()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:173:19
[INFO] [stdout]     |
[INFO] [stdout] 173 |         b.iter(|| black_box(civil_rules.capacity_of_person()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:177:19
[INFO] [stdout]     |
[INFO] [stdout] 177 |         b.iter(|| black_box(civil_rules.civil_rights()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:181:19
[INFO] [stdout]     |
[INFO] [stdout] 181 |         b.iter(|| black_box(civil_rules.civil_acts()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:185:19
[INFO] [stdout]     |
[INFO] [stdout] 185 |         b.iter(|| black_box(civil_rules.agency_system()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:189:19
[INFO] [stdout]     |
[INFO] [stdout] 189 |         b.iter(|| black_box(civil_rules.limitation_of_action()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:206:19
[INFO] [stdout]     |
[INFO] [stdout] 206 |         b.iter(|| black_box(explanation.len()))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:210:19
[INFO] [stdout]     |
[INFO] [stdout] 210 |         b.iter(|| black_box(explanation.contains("民法")))
[INFO] [stdout]     |                   ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:234:17
[INFO] [stdout]     |
[INFO] [stdout] 234 |                 black_box(rule.validate(&context));
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/law_bench.rs:243:17
[INFO] [stdout]     |
[INFO] [stdout] 243 |                 black_box(civil.validate(&context));
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> benches/law_bench.rs:234:17
[INFO] [stdout]     |
[INFO] [stdout] 234 |                 black_box(rule.validate(&context));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 234 |                 let _ = black_box(rule.validate(&context));
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> benches/law_bench.rs:243:17
[INFO] [stdout]     |
[INFO] [stdout] 243 |                 black_box(civil.validate(&context));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 243 |                 let _ = black_box(civil.validate(&context));
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `scale`
[INFO] [stdout]    --> src/rules/games/wargames/miniature_games.rs:301:37
[INFO] [stdout]     |
[INFO] [stdout] 301 |     pub fn measurement_tools(&self, scale: ModelScale) -> Vec<&'static str> {
[INFO] [stdout]     |                                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_scale`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 48.12s
[INFO] running `Command { std: "docker" "inspect" "85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed", kill_on_drop: false }`
[INFO] [stdout] 85d9873b89fe54dd8ba065cb67e356205d3e302a0e536cae8ba2c8eca22782ed
